Conventional dual-mode congestion control algorithms governing dual-flows in a network determine whether to switch to a loss-based congestion control mode upon detecting packet losses experienced by the dual-flows, and assume that the packet losses are induced by the presence of other loss-based flows in the network; however, when several dual-flows share a common network bottleneck with one or more pure loss-based flows, per-flow packet losses experienced by individual dual-flows may not be consistent across the flows. The inconsistent packet losses across the dual-flows can lead to degradation of fairness amongst them at the network bottleneck, which is an undesirable side-effect.